/*******************************************************************************
* KindEditor - WYSIWYG HTML Editor for Internet
* Copyright (C) 2006-2011 kindsoft.net
*
* @author Roddy <luolonghao@gmail.com>
* @site http://www.kindsoft.net/
* @licence http://www.kindsoft.net/license.php
*******************************************************************************/

KindEditor.plugin('link',
    function (K) {
        var self = this, name = 'link';
        self.plugin.link = {
            edit: function () {
                var lang = self.lang(name + '.'),
                    html = '<div style="padding:20px;">' +
                        //url
                        '<div class="ke-dialog-row">' +
                        '<label for="keUrl" style="width:60px;">' +
                        lang.url +
                        '</label>' +
                        '<input class="ke-input-text" type="text" id="keUrl" name="url" value="" style="width:260px;" /></div>' +
                        //type
                        '<div class="ke-dialog-row"">' +
                        '<label for="keType" style="width:60px;">' +
                        lang.linkType +
                        '</label>' +
                        '<select id="keType" name="type"></select>' +
                        '</div>' +
                        '</div>',
                    dialog = self.createDialog({
                        name: name,
                        width: 450,
                        title: self.lang(name),
                        body: html,
                        yesBtn: {
                            name: self.lang('yes'),
                            click: function (e) {
                                var url = K.trim(urlBox.val());
                                if (url == 'http://' || K.invalidUrl(url)) {
                                    alert(self.lang('invalidUrl'));
                                    urlBox[0].focus();
                                    return;
                                }
                                self.exec('createlink', url, typeBox.val()).hideDialog().focus();
                            }
                        }
                    }),
                    div = dialog.div,
                    urlBox = K('input[name="url"]', div),
                    typeBox = K('select[name="type"]', div);
                urlBox.val('http://');
                typeBox[0].options[0] = new Option(lang.newWindow, '_blank');
                typeBox[0].options[1] = new Option(lang.selfWindow, '');
                self.cmd.selection();
                var a = self.plugin.getSelectedLink();
                if (a) {
                    self.cmd.range.selectNode(a[0]);
                    self.cmd.select();
                    urlBox.val(a.attr('data-ke-src'));
                    typeBox.val(a.attr('target'));
                }
                urlBox[0].focus();
                urlBox[0].select();
            },
            'delete': function () {
                self.exec('unlink', null);
            }
        };
        self.clickToolbar(name, self.plugin.link.edit);
    });